Пульт.Онлайн /

Структура проектов

На одном сервере Пульт.Онлайн может быть размещено множество проектов.
Проекты состоят из разделов, каждый раздел содержит дерево соответствующих объектов (мнемосхемы, узлы, прототипы и тп.). Редактор позволяет содавать/удалять/модифицировать объекты проекта, а так же редактировать права доступа к объектам.

На данной странице ссылки для примера даны на наш демонстрационный сервер WebSCADA.ru. Структура сервера, установленного на вашем устройстве или в облаке будет аналогична структуре демо-сервера, так что вы легко сможете применить изложенную здесь информацию к вашим задачам.

Чтобы изменения, выполненные в Редакторе, стали доступны в Интерфейсе, необходимо выполнить сохранение и сборку проектов. Сохранение фиксирует изменения в редактируемых объектах. Сборка обновляет глобальный набор переменных на основе узлов и их прототипов и распределяет этот набор между драйверами и шлюзами системы.

Каждый объект отображается в Редакторе в своем окне, которое может иметь несколько вкладок. Например, узел имеет вкладки Переменные, Объекты, Доступ и Код.


Разделы проекта

Проект состоит из следующих разделов:

Пример структуры простейшего проекта


Группы

Группы пользователей проекта. Каждая группа содержит свой список пользователей. Пользователи получают доступ к элементам проекта в соответствии с разрешениями, установленными для групп, в которые они включены.

Журнал

Журнал проекта. В SCADA Пульт.Онлайн Журнал представляет собой базу даных, в которой фиксируются действия операторов, тревожные и системные события. На сервере используется единая база для всех проектов. Однако, запси относящиеся к конкретному проекту могут быть отфильтрованы и представлены отдельной таблицей. Журнал проекта представляет собой выборку записей, относящихся к отдельному проекту и доступен пользователям проекта в разделе Журнал. Общий журнал доступен только администраторам системы в разделе Система / Журнал.

Журнал не редактируется в Редакторе, он заполняется автоматически. SCADA Пульт.Онлайн не предоставляет интерфейс для изменения или удаления записей журнала. Раздел Журнал представлен в Редакторе для возможности редактирования прав доступа пользователей к Журналу проекта в Интерфейсе.

Мнемосхемы

Мнемосхема представляет собой шаблон экрана и является макетом графического интерфейса какого-либо устройств или инженерной системы. Каждая мнемосхема может применяться к одному или к нескольким экранам и может быть связана через экраны с разными узлами. Такое решение позволяет применять одну мнемосхему к множеству однотипных узлов без необходимости дублирования графики для каждого узла.

В общем случае, на одной мнемосхеме могут одновременно отображаются данные с нескольких узлов. Такая мнемосхема должна быть связана с узлами через Экран. В простейшем случае, когда на мнемосхеме требуется отобразить данные только одного узла, она может быть связана с узлом через его прототип, без использования экранов.

Переменные

Переменные проекта. В Интерфейсе системы в данном разделе отображается список переменных всех узлов, относящихся к данному проекту и доступен пользователям проекта. Глобальный список всех переменных системы доступен только администраторам в разделе Система / Переменные. В Редакторе раздел Переменные представлен для возможности настройки прав доступа пользователей к данному разделу через Интерфейсе.

Глобальный список переменных в SCADA Пульт.Онлайн формируется при выполнении сборки на основе узлов и их прототипов. Полный список всех переменных системы доступен администраторам в разделе Система / Переменные.

Каждая переменная имеет глобальное, проектное и локальное имя. Глобальное имя позволяет адресоваться к переменной из скриптов или математических выражений даже из других проектов и представляет собой комбинацию префикса проекта, префикса узла и имени переменной. Проектное имя позволяет адресоваться к переменной из других узлов в рамках одного проекта, а локальное имя позволяет адресоваться к переменной только в рамках одного узла.

Например: P1_N3_var1. Здесь P1 - префикс проекта с id=1, N3 - префикс узла с id=3 и var1 - локальное имя переменной. Проектным именем данной переменной будет N3_var1, а локальным - var1 Таким образом, к данной переменной можно адресоваться по глобальному имени P1_N3_var1 из любого проекта на сервере, по проектному имени N3_var1 - в рамках одного проекта, и по локальному имени var1 - в рамках одного узла/прототипа.

Раздел Переменные в редакторе представлен для для возможности редактирования прав доступа к разделу Переменные в Интерфейсе. Сами переменные формируются для каждого узла на основе выбранного прототипа.

Прототипы

Прототип в Пульт.Онлайн — это шаблон для создания узлов, который определяет набор переменных, параметров, отчетов и скриптов для всех связанных с ним узлов. Узел, связанный с прототипом, наследует его содержание (набор переменных, параметры, отчеты и скрипты).

Прототипы позволяют стандартизировать настройки узлов и упрощают их массовое создание. Например, можно создать прототип для Modbus-устройства с предопределенными переменными и параметрами подключения, а затем на его основе быстро развернуть множество однотипных узлов, задав у каждого узла только уникальные параметры (например, IP или порт).

Один прототип может содержать переменные разных драйверов. Как правило, помимо физических переменных, отражающих данные с полевого устройства, прототип дополняется виртуальными и тревожными переменными.

В прототипе можно указать мнемосхему, которая будет отображаться при открытии узла в интерфейсе системы. Эта опция пригодится в простых проектах, где один узел представляет законченную единицу мониторинга и где организация иерархии через связку Мнемосхема-Экран-Узлы представляется чрезмерной.

Расписания

Расписания используются для управления периодическими процессами, например, включением оборудования по графику. Каждое расписание может иметь несколько планов (графиков), один из которых является активным.

В расписании создается набор управляемых переменных, а план определяет, какое значение в какой момент времени установить данному набору переменных.

Расписания бывают двух форматов: почасовые и универсальные.

  • Почасовые расписания позволяют в удобной графической форме задавать график работы множества узлов с дискретностью в один час. Переменные меняются в 00 минут 00 секунд указанных часов.

  • Универсальный формат позволяет задавать значения произвольному набору переменных в произвольные моменты времени. Время задается в формате Cron.

Расписания создаются и редактируются в Интерфейсе, в редакторе раздел Расписания представлен для задания прав доступа.

Тревоги

Тревоги в Пульт.Онлайн — это механизм оповещения о критических событиях в SCADA-системе. Они позволяют отслеживать нарушения заданных условий работы оборудования или параметров.

Тревоги заводятся в прототипе на вкладке ALARM. При сборке проектов, для каждого узла будет создан соответствующий набор тревожных переменных. Тревожные переменные наблюдают значения указанных переменных и при выполнении заданных условий изменяют свой статус.

Раздел Тревоги в редакторе представлен для для возможности редактирования прав доступа к разделу Тревоги в Интерфейсе.

Справочники

Справочники используются в параметрах узла. В справочнике можно определить пары КЛЮЧ-ЗНАЧЕНИЕ и ссылаться на значения справочника по ключам. Например, если в проекте множество узлов ссылается на один и тот же IP-адрес MQTT-брокера, удобно будет определить этот IP-адрес в одном месте (в справочнике) и ссылаться на него по ключу в узлах. Тогда для замены IP-адреса достаточно будет изменить его в справочнике, а не во всем множестве узлов.

Узлы

Дерево узлов проекта. Обычно представляет иерархию физических устройств (контроллеров, преобразователей, датчиков и т.п.). Узлы наследуют параметры, список переменных и другие атрибуты от выбранного прототипа. Каждый узел в Пульт.Онлайн является логической единицей: может содержать переменные разных драйверов и работать с несколькими физическими узлами.

Переменные узла представляют значения реальных физических параметров (температура, уставка, мощность и т.п.). Существуют также и виртуальные переменные, предназначенные для обработки значений других переменных или для генерации тревог. Переменные узлов используются как источник данных для визуализации мнемосхем.

Узлы, созданные на базе одного прототипа, имеют одинаковый набор переменных. Персонализация узлов осуществляется через параметры узла - набор таких параметров, определенных в прототипе, становится доступен в свойствах каждого узла и позволяет узлам с одним и тем же набором переменных выполнять работу с разными физическими устройствами. Параметры узла транслируются в указанные свойства переменных.

Например, в параметры узла могут быть вынесены свойства host и port Modbus-переменных, тогда каждый узел может быть направлен на свой контроллер по уникальному IP-адресу и порту, заданному в этих параметрах и драйвер Modbus-переменных будут опрашивать регистры разных контроллеров для переменных разных узлов. В стандартных прототипах обычно уже определен набор параметров узла, но этот набор всегда можно изменить или дополнить требуемыми параметрами для любых свойств переменных.

Для того, чтобы в проекте получить значение физического параметра из опрашиваемого устройства, необходимо выполнить следующие действия:

  1. Создать прототип
  2. В прототипе завести переменные требуемого типа (Modbus, Bacnet, OPCUA, MQTT и т.п.)
  3. Заполнить значимые поля переменных (например, адрес регистра, хост, порт и т.п.) явными значениями или подстановкой параметра узла (%parameter_name%)
  4. Завести параметры узла, если в переменных они используются
  5. Создать узел
  6. Связать его с прототипом
  7. Выполнить сборку

Файлы

Хранилище файлов. Может быть использовано для организации и хранения проектной документации, схем, чертежей, прошивок контроллеров и т.п. Изображения, сохраненные в хранилище, доступны для использования в качестве иконок и элементов мнемосхем в данном проекте.

Экраны

Дерево экранов отображается в интерфейсе пользователя и обычно представляет иерархию разделов проекта (Вентиляция, Кондиционирование, Отопление и т.п.).

Экран связывает мнемосхему с одним или несколькими узлами, визуализирует значения переменных и предоставляет оператору интерфейс для управления узлом или инженерной системой.

К экрану можно привязать десктопную и мобильную версии мнемосхем. Выбор мнемосхемы для отображения будет выполняться автоматически, в зависимости от типа пользовательского устройства (на смартфонах будет отображаться мобильная мнемосхема, на компьютерах и планшетах - десктопная).

Для задач, где требуется сложная визуализация или нестандартная логика, возможна организация экранов на базе произвольного HTML. В этом случае визуализация выполняется в пользовательском JS-скрипте, в котором возможно использование фреймворков и сторонних библиотек. Доступ к значениям переменных и параметрам узлов в таком случае выполняется через API-функции.

  Email
  SMS
   fdb_list
   fdb_load
   fdb_move
   fdb_paths
   node_list
   subscribe
   var_get
   var_list
   var_set